Current general purpose computer-based information management approaches include flat files, hypertext models (e.g., World Wide Web), and relational database management systems (RDBMS). A fundamental problem with all of these approaches is “brittleness”—they have limited inherent ability to adapt to changing circumstances without direct human intervention. For the more robust of these information management approaches (e.g., relational database management system, or RDBMS), the human intervention may be somewhat reduced compared to that of less sophisticated approaches (e.g., flat files), but the need for direct, manual effort is certainly not eliminated.
Likewise, specific computer applications that are underpinned by the prior art information management approaches are generally very limited in their ability to adapt to changing circumstances and user requirements over time. In addition to prior art information management approaches and the computing applications built on them generally being too brittle, they also can be criticized for being monolithic—that is, it is generally not possible to dynamically separate subsets of a computing application and recombine them with other subsets of a plurality of computing applications to form new and useful applications. In other words, prior art computing systems and applications are very limited in their ability to usefully evolve without directed human programming or content management attention. This is a significant root cause of the well-known and well-discussed “software bottleneck.”